Schedulable Apex এবং তার প্রয়োগ

Computer Programming - এপেক্স (Apex) Apex এবং Asynchronous Processing (Apex and Asynchronous Processing) |
263
263

Schedulable Apex হলো Salesforce-এর একটি Asynchronous Apex ফিচার, যা নির্দিষ্ট সময়ে বা নিয়মিত বিরতিতে নির্দিষ্ট Apex কোড চালানোর জন্য ব্যবহৃত হয়। Schedulable Apex ব্যবহার করে নিয়মিত ডেটা প্রসেসিং, রেকর্ড আপডেট, অথবা ব্যাকগ্রাউন্ডে অন্যান্য কাজ স্বয়ংক্রিয়ভাবে সম্পন্ন করা যায়। এটি সাধারণত নির্দিষ্ট সময়ে নির্দিষ্ট কাজ সম্পন্ন করতে সহায়ক।


Schedulable Apex এর মূল বৈশিষ্ট্য

  1. নিয়মিত কার্যক্রম সম্পন্ন: নির্দিষ্ট সময়, দিন, সপ্তাহ, মাস অনুসারে কাজ চালানো সম্ভব হয়।
  2. স্বয়ংক্রিয় কাজ সম্পন্ন: Salesforce প্ল্যাটফর্মে নির্দিষ্ট কাজ নির্দিষ্ট সময়ে স্বয়ংক্রিয়ভাবে চালানো যায়।
  3. Cron Expressions: Schedulable Apex-এ ক্রন এক্সপ্রেশন ব্যবহার করে সময় নির্ধারণ করা যায়, যেমন প্রতিদিন, প্রতি ঘন্টা, নির্দিষ্ট তারিখে বা নির্দিষ্ট সপ্তাহে কাজ চালানো।

Schedulable Apex এর গঠন

Schedulable Apex চালানোর জন্য Schedulable ইন্টারফেস ইমপ্লিমেন্ট করতে হয় এবং execute মেথড ডিফাইন করতে হয়। execute মেথডে নির্দিষ্ট কাজ সম্পন্ন করার জন্য কোড লেখা হয়।

global class ScheduledExample implements Schedulable {
    global void execute(SchedulableContext sc) {
        // নির্দিষ্ট কাজ সম্পন্ন করার কোড
        System.debug('Scheduled job is running');
    }
}

Schedulable Apex চালানোর জন্য Cron Expression

Schedulable Apex নির্দিষ্ট সময়ে চালানোর জন্য System.schedule মেথড এবং Cron Expression ব্যবহার করা হয়। Cron Expression-এ সময় নির্ধারণ করতে পারেন, যা পাঁচটি অংশ নিয়ে গঠিত:

  • Seconds: ০-৫৯
  • Minutes: ০-৫৯
  • Hours: ০-২৩
  • Day of Month: ১-৩১ (বা ?)
  • Month: ১-১২ বা জানুয়ারি থেকে ডিসেম্বর
  • Day of Week: ০-৭ বা রবিবার থেকে শনিবার (০ এবং ৭ রবিবার বোঝায়)

উদাহরণ: Cron Expression

উদাহরণক্রন এক্সপ্রেশনবিবরণ
প্রতিদিন দুপুর ১২টায়0 0 12 * * ?প্রতিদিন দুপুর ১২টায় চালানো
প্রতি ঘন্টায়0 0 * * * ?প্রতি ঘন্টায় চালানো
প্রতি সপ্তাহের সোমবার0 0 10 ? * 2প্রতি সোমবার সকাল ১০টায় চালানো
প্রতি মাসের ১ তারিখে0 0 0 1 * ?প্রতি মাসের ১ তারিখে রাত ১২টায়

Schedulable Apex এর উদাহরণ

নিচে একটি Schedulable Apex ক্লাস এবং Cron Expression ব্যবহার করে Schedulable Apex চালানোর উদাহরণ দেয়া হলো।

global class AccountUpdateScheduler implements Schedulable {
    global void execute(SchedulableContext sc) {
        List<Account> accounts = [SELECT Id, Name FROM Account WHERE LastModifiedDate = LAST_N_DAYS:30];
        for (Account acc : accounts) {
            acc.Name = acc.Name + ' - Updated';
        }
        update accounts;
        System.debug('Scheduled job completed: Account names updated');
    }
}

Schedulable Apex কল করা

// Cron Expression: প্রতিদিন সকাল ৮টায়
String cronExp = '0 0 8 * * ?';
System.schedule('Daily Account Update', cronExp, new AccountUpdateScheduler());
  • এখানে, AccountUpdateScheduler ক্লাসে Account রেকর্ড আপডেট করার জন্য execute মেথডে কোড লেখা হয়েছে।
  • System.schedule মেথড Cron Expression ব্যবহার করে প্রতিদিন সকাল ৮টায় এই কাজ চালাবে।

Schedulable Apex-এর ব্যবহার ক্ষেত্র

  1. নিয়মিত ডেটা প্রসেসিং: Schedulable Apex ব্যবহার করে মাসিক বা সাপ্তাহিক ডেটা প্রসেসিং স্বয়ংক্রিয় করা যায়, যেমন রিপোর্ট তৈরি করা।
  2. ডেটা ক্লিনআপ এবং আর্কাইভিং: অপ্রয়োজনীয় বা পুরোনো রেকর্ড ক্লিনআপ করার জন্য নির্দিষ্ট সময়ে Schedulable Apex চালানো যায়।
  3. রিপোর্ট আপডেট: রিপোর্ট বা অ্যানালাইসিস আপডেট করা এবং তা নিয়মিতভাবে সম্পন্ন করা।
  4. ইন্টিগ্রেশন এবং সিঙ্ক্রোনাইজেশন: বহিরাগত সিস্টেম বা সার্ভারের সাথে ডেটা সিঙ্ক্রোনাইজ করার জন্য নির্দিষ্ট সময়ে চালানো।
  5. স্বয়ংক্রিয় রিমাইন্ডার পাঠানো: নির্দিষ্ট সময়ে ব্যবহারকারীদের রিমাইন্ডার পাঠানোর জন্য।

Schedulable Apex এর সুবিধা

  1. স্বয়ংক্রিয়তা: নির্দিষ্ট সময়ে কাজ স্বয়ংক্রিয়ভাবে সম্পন্ন করে, যা ব্যবস্থাপনা সহজ করে।
  2. নিয়মিত কার্যক্রম: মাসিক, সাপ্তাহিক, অথবা দৈনিক ভিত্তিতে কাজ সম্পন্ন করতে সহায়ক।
  3. ব্যাকগ্রাউন্ড প্রসেসিং: Schedulable Apex ব্যাকগ্রাউন্ডে কাজ করে এবং ব্যবহারকারীর ইন্টারফেসে কোনও অতিরিক্ত লোড ফেলে না।
  4. Cron Expression: সময়মাফিক কাজ পরিচালনা করতে সহজ Cron Expression ব্যবহার করা যায়।

Schedulable Apex ব্যবহার করার ভালো অনুশীলন

  1. লগিং এবং মনিটরিং: Schedulable Apex-এ লগিং যুক্ত করা উচিত, যাতে কাজ সম্পন্ন হয়েছে কিনা তা সহজে ট্র্যাক করা যায়।
  2. Governor Limit মেনে চলুন: Schedulable Apex গভর্নর লিমিটের মধ্যে থাকা উচিত এবং কোড অপ্টিমাইজ করা উচিত।
  3. Exception Handling: Exception Handling নিশ্চিত করতে try-catch ব্লক ব্যবহার করুন, যাতে ত্রুটি দেখা দিলে কাজ ব্যাহত না হয়।
  4. Reschedule Functionality: কাজের সময় পরিবর্তন বা পুনরায় শিডিউল করার প্রয়োজন হলে কাস্টম লজিক ব্যবহার করে তা পুনরায় শিডিউল করুন।

সারসংক্ষেপ

Schedulable Apex Salesforce-এ নিয়মিত বিরতিতে স্বয়ংক্রিয় কাজ সম্পন্ন করতে ব্যবহৃত হয়। Cron Expression ব্যবহার করে Schedulable Apex-এ নির্দিষ্ট সময়ে কাজ চালানো যায়। এটি ডেটা প্রসেসিং, ক্লিনআপ, এবং রিমাইন্ডার পাঠানোর জন্য ব্যবহার করা যায়, যা ব্যবসায়িক কার্যক্রম আরও স্বয়ংক্রিয় ও সুনিয়ন্ত্রিত করে তোলে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion